package com.dc.commons.jpa.repository;

import java.util.List;

import com.dc.commons.persistence.TreeEntity;

/*******************************************************************************<P>
 * 文件名: BaseTreeRepository.java <br>
 * 版本: 1.0<br>
 * 描述:<br>
 * 版权所有: <br>
 * <P>
 * 创建者: 王建栋 <br>
 * 创建日期: 2016年4月28日 下午2:34:17<br>
 * 修改者: <br>
 * 修改日期: <br>
 * 修改说明: <br>
 ******************************************************************************/
public interface BaseTreeRepository<T extends TreeEntity> extends BaseRepository<T,String>{


	/**
	 * 减少大于该节点的排序
	 * @param parentKey
	 * @param displayNo
	 */

	public void reduceSibling (String parentKey,Integer displayNo);
	
	/**
	 * 增大大于该节点的排序 
	 * @param parentKey
	 * @param displayNo
	 */
	public void affixationSibling (String parentKey,Integer displayNo);
	
	/**
	 * 根据parentKey 查询列表并按照显示顺序排序
	 * @param parentKey
	 * @return List
	 */
	public List<T> findByParentKeyOrderByDisplayNoAsc(String parentKey);
	
	/**
	 * 查询树，根据 级别，显示顺序排序
	 * @return
	 */
	public List<T> findByOrderByLevelNoAscDisplayNoAsc();
	
	
}
